home *** CD-ROM | disk | FTP | other *** search
- LOGICAL FUNCTION VERIFY (STR1,STR2)
- C*
- C* *******************************
- C* *******************************
- C* ** **
- C* ** VERIFY **
- C* ** **
- C* *******************************
- C* *******************************
- C*
- C* SUBPROGRAM :
- C* VERIFY
- C*
- C* AUTHOR :
- C* ART RAGOSTA
- C* MS207-5
- C* AMES RESEARCH CENTER
- C* MOFFETT FIELD, CALIF. 94035
- C* (415)694-5578
- C*
- C* PURPOSE :
- C* TO VERIFY THAT EACH CHARACTER IN STR1 ALSO APPEARS IN STR2.
- C* EFFICIENCY NOTES :
- C* 1. THE RAREST LETTER(S) SHOULD APPEAR FIRST IN 'STR2'.
- C* 2. THE LENGTHS OF 'STR1' AND 'STR2' SHOULD BE AS SMALL AS
- C* POSSIBLE, SINCE ALL CHARACTERS OUT TO 'LEN(STR1/2)' WILL
- C* BE CHECKED EVEN IF THEY ARE NOT MEANINGFUL.
- C*
- C* INPUT ARGUMENTS :
- C* STR1 - STRING TO CHECK.
- C* STR2 - STRING CONTAINING CHARACTERS WHICH ARE VALID.
- C*
- C* OUTPUT ARGUMENTS :
- C* VERIFY - (FUNCTION VALUE) TRUE IF EVERY CHARACTER IN STR1 IS
- C* ALSO IN STR2, FALSE OTHERWISE.
- C*
- C* INTERNAL WORK AREAS :
- C* NONE
- C*
- C* COMMON BLOCKS :
- C* NONE
- C*
- C* FILE REFERENCES :
- C* NONE
- C*
- C* DATA BASE ACCESS :
- C* NONE
- C*
- C* SUBPROGRAM REFERENCES :
- C* NONE
- C*
- C* ERROR PROCESSING :
- C* NONE
- C*
- C* TRANSPORTABILITY LIMITATIONS :
- C* NONE
- C*
- C* ASSUMPTIONS AND RESTRICTIONS :
- C* NONE
- C*
- C* LANGUAGE AND COMPILER :
- C* ANSI FORTRAN 77
- C*
- C* VERSION AND DATE :
- C* VERSION I.0 17-JAN-85
- C*
- C* CHANGE HISTORY :
- C* 17-JAN-85 INITIAL VERSION
- C*
- C***********************************************************************
- C*
- CHARACTER *(*) STR1,STR2
- C
- C --- LENGTHS LESS SPACES
- C
- L1 = LEN(STR1)
- L2 = LEN(STR2)
- VERIFY = .FALSE.
- DO 20 I = 1, L1
- DO 10 J = 1, L2
- IF (STR1(I:I) .EQ. STR2(J:J))GO TO 20
- 10 CONTINUE
- RETURN
- 20 CONTINUE
- VERIFY = .TRUE.
- RETURN
- END
- C
- C---END VERIFY
- C
-